package com.js.basic.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 合同约定对象 bs_contract_agree
 * 
 * @author ruoyi
 * @date 20240709
 */
public class BsContractAgree extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 合同履行编号 */
    private Long agreeId;

    /** 款项类型 */
    @Excel(name = "款项类型")
    private String paymentType;

    /** 付款日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "付款日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date paymentTime;

    /** 付款单位 */
    @Excel(name = "付款单位")
    private String paymentUnit;

    /** 供应商编号 */
    @Excel(name = "供应商编号")
    private String supCode;

    /** 收款单位 */
    @Excel(name = "收款单位")
    private String supName;

    /** 付款方式 */
    @Excel(name = "付款方式")
    private String paymentMethod;

    /** 付款金额 */
    @Excel(name = "付款金额")
    private BigDecimal paymentMoney;

    private String bindCode;

    public String getBindCode() {
        return bindCode;
    }

    public void setBindCode(String bindCode) {
        this.bindCode = bindCode;
    }

    /** 违约责任 */
    @Excel(name = "违约责任")
    private String backOut;

    /** 合同编号 */
    @Excel(name = "合同编号")
    private String contractCode;

    /** 付款凭证路径 */
    @Excel(name = "付款凭证路径")
    private String paymentFilePath;

    /** 付款凭证名称 */
    @Excel(name = "付款凭证名称")
    private String paymentFileName;

    public void setAgreeId(Long agreeId) 
    {
        this.agreeId = agreeId;
    }

    public Long getAgreeId() 
    {
        return agreeId;
    }
    public void setPaymentType(String paymentType) 
    {
        this.paymentType = paymentType;
    }

    public String getPaymentType() 
    {
        return paymentType;
    }
    public void setPaymentTime(Date paymentTime) 
    {
        this.paymentTime = paymentTime;
    }

    public Date getPaymentTime() 
    {
        return paymentTime;
    }
    public void setPaymentUnit(String paymentUnit) 
    {
        this.paymentUnit = paymentUnit;
    }

    public String getPaymentUnit() 
    {
        return paymentUnit;
    }
    public void setSupCode(String supCode) 
    {
        this.supCode = supCode;
    }

    public String getSupCode() 
    {
        return supCode;
    }
    public void setSupName(String supName) 
    {
        this.supName = supName;
    }

    public String getSupName() 
    {
        return supName;
    }
    public void setPaymentMethod(String paymentMethod) 
    {
        this.paymentMethod = paymentMethod;
    }

    public String getPaymentMethod() 
    {
        return paymentMethod;
    }
    public void setPaymentMoney(BigDecimal paymentMoney)
    {
        this.paymentMoney = paymentMoney;
    }

    public BigDecimal getPaymentMoney()
    {
        return paymentMoney;
    }
    public void setBackOut(String backOut) 
    {
        this.backOut = backOut;
    }

    public String getBackOut() 
    {
        return backOut;
    }
    public void setContractCode(String contractCode) 
    {
        this.contractCode = contractCode;
    }

    public String getContractCode() 
    {
        return contractCode;
    }
    public void setPaymentFilePath(String paymentFilePath) 
    {
        this.paymentFilePath = paymentFilePath;
    }

    public String getPaymentFilePath() 
    {
        return paymentFilePath;
    }
    public void setPaymentFileName(String paymentFileName) 
    {
        this.paymentFileName = paymentFileName;
    }

    public String getPaymentFileName() 
    {
        return paymentFileName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("agreeId", getAgreeId())
            .append("paymentType", getPaymentType())
            .append("paymentTime", getPaymentTime())
            .append("paymentUnit", getPaymentUnit())
            .append("supCode", getSupCode())
            .append("supName", getSupName())
            .append("paymentMethod", getPaymentMethod())
            .append("paymentMoney", getPaymentMoney())
            .append("backOut", getBackOut())
            .append("contractCode", getContractCode())
            .append("paymentFilePath", getPaymentFilePath())
            .append("paymentFileName", getPaymentFileName())
            .append("createTime", getCreateTime())
            .toString();
    }
}
